package com.easyj.admin.edu.service;

import java.util.List;
import com.easyj.base.exception.EasyjException;
import com.easyj.base.common.page.Page;
import com.easyj.admin.activiti.vo.SimpleApproveVO;
import com.easyj.admin.db.model.SocialJob;
import com.easyj.admin.db.model.SocialJobQO;
import com.easyj.admin.db.model.TaskComment;

public interface SocialJobService {
	
	public final static String  ProcessDefKey="socialJob"; //流程定义Key
	public final static String  eduLeaderApproveKey="socialEduLeaderApprove";
	public final static String  officeLeaderApproveKey="officeLeaderApprove";

	public Page<SocialJob> findPage(SocialJobQO filter);

   	public List<SocialJob> findList(SocialJobQO filter);
		
    public long count(SocialJobQO filter);

	public SocialJob findById(Long id);

	public int  apply(SocialJob entity) throws EasyjException;
	
	public int  reApply(SocialJob entity) throws EasyjException;
	
	public void approve(SimpleApproveVO approveVO) throws EasyjException;
	
	public int  updateEntity(SocialJob entity) throws EasyjException;

	public int  cancel(Long id) throws EasyjException;
	
	public void auditApply(SimpleApproveVO approveVO) throws EasyjException;
	
	public List<TaskComment> findCommentsById(Long entityId);

}
